/**
 * 配置路由规则:
 * 1. 准备一个数组：[{path:'地址', element:组件}, ...] => 导出
 * 2. 在App.jsx中使用：const 路由规则配置元素 = useRoutes(路由规则数组)
 * 3. 在App.jsx中使用：{路由规则配置元素} 渲染路由规则元素
 * 4. 在index.js入口：使用BrowserRouter/HashRouter包裹App根组件
 */
 import Layout from '../pages/layout'
 import Login from '../pages/login'
 import NotFound from '../pages/404'
 //==================导入拦截组件==========================
 import Auth from '@/components/auth'
 //==================导入子页面============================
 import Home from '@/pages/home'
 import Article from '@/pages/article'
 import Publish from '@/pages/publish'
 
 const routes = [
   // ============公共布局页面===============================
   {
     path: '/',
     element:<Auth element={<Layout />}/> ,
     //================配置子路由并在layout组件中挂载===========
     children:[
      {
        path:'/home',
        element:<Home/>
      },
      {
        path:'/article',
        element:<Article/>
      },
      {
        path:'/publish/*',
        element:<Publish/>
      },
     ]
   },
   // ===================登录==================================
   {
     path: '/login',
     element: <Login />
   },
   //==================== 404 => * 匹配所有不存在的path地址==========
   {
     path: '*',
     element: <NotFound />
   }
 ]
 // ====================导出路由规则==============================
 export default routes